In an application deployment where components are deployed to different computers or nodes, a deployment on one node often is dependent upon the state of a deployment on another node. For example, a primary application on one node may need to be in a specified state before deployment of a redundant or secondary application can proceed on another node. Existing systems typically use a single point, such as a centralized coordinating system or a central repository, to orchestrate the deployment on each node.
A centralized coordinating system or a central repository may control the deployment on each node and ensure that applications on each are deployed in the desired order. As each application deployment moves from one state to the next, the central repository verifies that the other nodes are in the required state before proceeding. However, in the deployment of applications across multiple nodes in existing systems, the nodes are not capable of directly determining the status of the application on other nodes.